{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import arcpy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Help on class Point in module arcpy.arcobjects.arcobjects:\n",
      "\n",
      "class Point(arcpy.arcobjects.mixins.PointMixin, arcpy.arcobjects._base._BaseArcObject)\n",
      " |  Point(X=None, Y=None, Z=None, M=None, ID=None)\n",
      " |  \n",
      " |  The point object is used frequently with cursors. Point features return a\n",
      " |  single point object instead of an array of point objects. All other\n",
      " |  feature types—polygon, polyline, and multipoint—return an array of point\n",
      " |  objects or an array containing multiple arrays of point objects if the feature has multiple parts.\n",
      " |  \n",
      " |  Method resolution order:\n",
      " |      Point\n",
      " |      arcpy.arcobjects.mixins.PointMixin\n",
      " |      arcpy.arcobjects._base._BaseArcObject\n",
      " |      builtins.object\n",
      " |  \n",
      " |  Methods defined here:\n",
      " |  \n",
      " |  clone(self, *args)\n",
      " |      Point.clone(point_object)\n",
      " |      \n",
      " |      Clone the point object.\n",
      " |      \n",
      " |        point_object(Point):\n",
      " |      A point object.\n",
      " |  \n",
      " |  contains(self, second_geometry, relation=None)\n",
      " |      Point.contains(second_geometry)\n",
      " |      \n",
      " |      Indicates if the base geometry contains the comparison geometry.\n",
      " |      \n",
      " |      contains is the opposite of within .\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      contains relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  crosses(self, second_geometry)\n",
      " |      Point.crosses(second_geometry)\n",
      " |      \n",
      " |      Indicates if the two geometries intersect in a geometry of a lesser\n",
      " |      shape type.\n",
      " |      \n",
      " |      Two polylines cross if they share only points in common, at least\n",
      " |      one of which is not an endpoint. A polyline and an polygon cross if\n",
      " |      they share a polyline or a point (for vertical line) in common on\n",
      " |      the interior of the polygon which is not equivalent to the entire\n",
      " |      polyline.\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      crosses relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  disjoint(self, second_geometry)\n",
      " |      Point.disjoint(second_geometry)\n",
      " |      \n",
      " |      Indicates if the base and comparison geometries share no points in\n",
      " |      common.\n",
      " |      \n",
      " |      Two\n",
      " |      geometries intersect if disjoint returns False .\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      disjoint relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  equals(self, second_geometry)\n",
      " |      Point.equals(second_geometry)\n",
      " |      \n",
      " |      Indicates if the base and comparison geometries are of the same shape\n",
      " |      type and define the\n",
      " |      same set of points in the plane.  This is a 2D comparison  only; M\n",
      " |      and Z values are ignored.\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      equals relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  overlaps(self, second_geometry)\n",
      " |      Point.overlaps(second_geometry)\n",
      " |      \n",
      " |      Indicates if the intersection of the two geometries has the same\n",
      " |      shape type as one of the input geometries and is not equivalent to\n",
      " |      either of the input geometries.\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      overlaps relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  touches(self, second_geometry)\n",
      " |      Point.touches(second_geometry)\n",
      " |      \n",
      " |      Indicates if the boundaries of the geometries intersect.\n",
      " |      \n",
      " |      Two geometries touch when the intersection of the\n",
      " |      geometries is not empty, but the intersection of their interiors is\n",
      " |      empty. For example, a point touches a polyline only if the point is\n",
      " |      coincident with one of the polyline end points.\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.  Possible\n",
      " |      touches relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  within(self, second_geometry, relation=None)\n",
      " |      Point.within(second_geometry)\n",
      " |      \n",
      " |      Indicates if the base geometry is within the comparison geometry.\n",
      " |      \n",
      " |      within is the opposite operator of contains .\n",
      " |      \n",
      " |      Only True relationships are shown in this illustration.\n",
      " |      \n",
      " |        Possible within relationships\n",
      " |      \n",
      " |        second_geometry(Object):\n",
      " |      A second geometry.\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Data descriptors defined here:\n",
      " |  \n",
      " |  ID\n",
      " |  \n",
      " |  M\n",
      " |  \n",
      " |  X\n",
      " |  \n",
      " |  Y\n",
      " |  \n",
      " |  Z\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Methods inherited from arcpy.arcobjects.mixins.PointMixin:\n",
      " |  \n",
      " |  __init__(self, X=None, Y=None, Z=None, M=None, ID=None)\n",
      " |      Point({X}, {Y}, {Z}, {M}, {ID})\n",
      " |      \n",
      " |        X{Double}:\n",
      " |      The X coordinate of the point.\n",
      " |      \n",
      " |        Y{Double}:\n",
      " |      The Y coordinate of the point.\n",
      " |      \n",
      " |        Z{Double}:\n",
      " |      The Z coordinate of the point.\n",
      " |      \n",
      " |        M{Double}:\n",
      " |      The M value of the point.\n",
      " |      \n",
      " |        ID{Integer}:\n",
      " |      The shape ID of the point.\n",
      " |  \n",
      " |  __repr__(self)\n",
      " |      Return repr(self).\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Data descriptors inherited from arcpy.arcobjects.mixins.PointMixin:\n",
      " |  \n",
      " |  __dict__\n",
      " |      dictionary for instance variables (if defined)\n",
      " |  \n",
      " |  __weakref__\n",
      " |      list of weak references to the object (if defined)\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Methods inherited from arcpy.arcobjects._base._BaseArcObject:\n",
      " |  \n",
      " |  __cmp__(self, other)\n",
      " |  \n",
      " |  __str__(self)\n",
      " |      Return str(self).\n",
      "\n"
     ]
    }
   ],
   "source": [
    "help(arcpy.Point)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "pnt = arcpy.Point(116.403927,39.915087)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Point (116.403927, 39.915087, #, #)>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pnt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "sr = arcpy.SpatialReference(4326)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style>table td#td0  {font-weight: bold}</style><table class=\"notebook\"><colgroup><col style=\"width:45%\"></col><col style=\"width:55%\"></col></colgroup><tr><td id = \"td0\" title=\"name (Geographic Coordinate System)\">name (Geographic Coordinate System)</td><td title=\"GCS_WGS_1984\">GCS_WGS_1984</td></tr><tr><td id = \"td0\" title=\"factoryCode (WKID)\">factoryCode (WKID)</td><td title=\"4326\">4326</td></tr><tr><td id = \"td0\" title=\"angularUnitName (Angular Unit)\">angularUnitName (Angular Unit)</td><td title=\"Degree\">Degree</td></tr><tr><td id = \"td0\" title=\"datumName (Datum)\">datumName (Datum)</td><td title=\"D_WGS_1984\">D_WGS_1984</td></tr></table>"
      ],
      "text/plain": [
       "<SpatialReference object at 0x14f9c4e8e08[0x14f9c4556b0]>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3.7.11 ('base')",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.11"
  },
  "orig_nbformat": 4,
  "vscode": {
   "interpreter": {
    "hash": "06b308fdbfd5979111721ebbf4de1ae2cbf405c7740d4ab5c57cb4c3e518bed6"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
